package com.battle.service.service.in;

import nirvana.core.domains.vo.PageResult;
import com.battle.pojo.param.userAttention.*;
import com.battle.pojo.vo.userAttention.*;

import java.util.List;


/**
 * 【描 述】：用户关注服务
 * 【环 境】：J2SE
 * 【详 细】：
 */
public interface UserAttentionService {

    /**
     * 创建用户关注
     *
     * @param param
     */
    void createUserAttention(CreateUserAttentionParam param);

    /**
     * 修改用户关注
     *
     * @param param
     */
    void editUserAttention(EditUserAttentionParam param);

    /**
     * 移除用户关注
     *
     * @param id
     */
    void removeUserAttention(Long id);

    /**
     * 启动/禁用用户关注
     *
     * @param id
     */
    void enabledUserAttention(Long id);

    /**
     * 获取用户关注详情
     *
     * @param id
     * @return
     */
    GetUserAttentionVo getUserAttention(Long id);

    /**
     * 获取用户关注列表
     *
     * @param param
     * @return
     */
    PageResult<GetUserAttentionListVo> getUserAttentionList(GetUserAttentionListParam param);


    /**
     * 获取用户关注下拉列表
     *
     * @param param
     * @return
     */
    List<GetUserAttentionDownListVo> getUserAttentionDownList(GetUserAttentionDownListParam param);


}